var mmenus  = new Array();
var misShow = new Boolean(); 
misShow = false;
var misdown = new Boolean();
misdown = false;
var msrcel; 
var mfromel;  
var mtoel; 
var mnumberofsub=0;
var musestatus=false;
var mthestatus="";
var mpopTimer=0;

mmenucolor='';
mfontcolor='#2B4E7D';
mmenuoutcolor='#FAFBFD';
mmenuincolor='#A0B1DE';
mmenuoutbordercolor='#FAFBFD';
mmenuinbordercolor='#5A84BB';
mmidoutcolor='#5A84BB';
mmidincolor='#FAFBFD';
mmenuovercolor='#FFFFFF';
mitemedge='0';
msubedge='0';
mmenuunitwidth=40;
mmenuitemwidth=160;
mmenuheight=14;
mmenuwidth='*';
mmenuadjust=0;
mmenuadjustV=-1;
mmenupaddingleft=5
mfonts='font-family: Tahoma; font-size: 11px; color: #2B4E7D; ';
mcursor='default';

function stoperror(){
	return true;
}
window.onerror=stoperror;
function mpopOut() {
	mpopTimer = setTimeout('mallhide()', 500);
}
function getReal(el, type, value) {
	temp = el;
	while ((temp != null) && (temp.tagName != "BODY")) {
		if (eval("temp." + type) == value) {
			el = temp;
			return el;
		}
		temp = temp.parentElement;
	}
	return el;
}

function mMenuRegister(menu) {
	mmenus[mmenus.length] = menu;
	return (mmenus.length - 1);
}
//oldfun mMenuItem(caption,command,target,isline,level,statustxt,img,sizex,sizey,pos)
//------ mMenuItem(caption,command,target,isline,level,'','','0','0','3')
function mMenuItem(caption,command,target,isline,level){
	var statustxt = '';
	var img   = '';
	var sizex = '0';
	var sizey = '0';
	var pos   = '3';
	this.items = new Array();
	this.caption=caption;
	this.command=command;
	this.target=target;
	this.isline=isline;
	this.statustxt=statustxt;
	if(level!=null){
		mnumberofsub++;
		this.hasc=mnumberofsub;
	}
	this.level=level;
	this.img=img;
	this.sizex=sizex;
	this.sizey=sizey;
	this.pos=pos;
}
//oldfun mMenu(caption,command,target,img,sizex,sizey,pos)
//------ mMenu(caption,command,target,'','0','0','3');
function mMenu(caption,command,target){
	var img   = '';
	var sizex = '0';
	var sizey = '0';
	var pos   = '3';
	this.items = new Array();
	this.caption=caption;
	this.command=command;
	this.target=target;
	this.img=img;
	this.sizex=sizex;
	this.sizey=sizey;
	this.pos=pos;
	this.id=mMenuRegister(this);
}
function mMenuAddItem(item)
{
	this.items[this.items.length] = item;
	item.parent = this.id;
	this.children=true;
}
mMenu.prototype.addItem = mMenuAddItem;
mMenuItem.prototype.addsubItem = mMenuAddItem;

function mtoout(src){
	src.style.backgroundColor=mmenuincolor;
	src.style.color=mmenuovercolor;
}
function mtoin(src){
	src.style.backgroundColor=mmenuincolor;
	src.style.color=mmenuovercolor;
}
function mnochange(src){
	src.style.backgroundColor='';
	src.style.color=mfontcolor;
}
function mallhide(){
	for(var nummenu=0;nummenu<mmenus.length;nummenu++){
		var themenu=document.all['mMenu'+nummenu];
		var themenudiv=document.all['mmenudiv'+nummenu];
		mnochange(themenu);
		mmenuhide(themenudiv);
	}
	for(nummenu=1;nummenu<=mnumberofsub;nummenu++){
		var thesub=document.all['msubmenudiv'+nummenu];
        msubmenuhide(thesub);
		mnochange(document.all['mp'+nummenu]);
		document.all["mitem"+nummenu].style.color=mfontcolor;
	}
}
function mmenuhide(menuid){
	menuid.style.visibility='hidden';
	misShow=false;
	//////////////////////////
	showEleObj();
}
function msubmenuhide(menuid){
	menuid.style.visibility='hidden';
	//////////////////////////
	showEleObj();
}
function mmenushow(menuid,pid){
	menuid.style.left=mposflag.offsetLeft+pid.offsetLeft+mmenuadjust;
	menuid.style.top=mposflag.offsetTop+mmenutable.offsetHeight+mmenuadjustV+5;
	menuid.style.visibility='visible';
	if(mmenuitemwidth+parseInt(menuid.style.left)>document.body.clientWidth)
		menuid.style.left=document.body.clientWidth-mmenuitemwidth;
	misShow=true;
	//////////////////////////
	hideEleObj(menuid);
}
function mshowsubmenu(menuid,pid,rid){
	menuid.style.left=pid.offsetWidth+rid.offsetLeft+29;
	menuid.style.top=pid.offsetTop+rid.offsetTop-3;
	menuid.style.visibility='visible';
	if(mmenuitemwidth+parseInt(menuid.style.left)>document.body.clientWidth)
		menuid.style.left=document.body.clientWidth-mmenuitemwidth;
	//////////////////////////
	hideEleObj(menuid);
}
function mmenu_over(menuid,x){
	mtoel = getReal(window.event.toElement, "className", "coolButton");
	mfromel = getReal(window.event.fromElement, "className", "coolButton");
	if (mtoel == mfromel) return;
		msrcel = window.event.srcElement;
	if(x<0){
		misShow = false;
		mallhide();
		mtoout(msrcel);
	}else{
		mallhide();
		mtoin(msrcel);
		mmenushow(menuid,eval("mMenu"+x));
	}
	clearTimeout(mpopTimer);
	//////////////////////////
	hideEleObj(menuid);
}
function mmenu_out(menuid){
	mtoel = getReal(window.event.toElement, "className", "coolButton");
	mfromel = getReal(window.event.fromElement, "className", "coolButton");
	if (mtoel == mfromel) return;	
		msrcel = window.event.srcElement;
	if (misShow){
		mtoin(msrcel);
	}else{
		mnochange(msrcel);
	}
	mpopOut()
}
function mmenu_down(menuid,x){
	msrcel = getReal(window.event.srcElement, "className", "coolButton");
	if(misShow){
		mmenuhide(menuid);
		mtoout(msrcel);
	}else{
		mtoin(msrcel);
		mmenushow(menuid,eval("mMenu"+x));
		misdown=true;
	}
}
function mmenu_up(){
	misdown=false;
}
function mmenuitem_over(menuid,item){
	msrcel = getReal(window.event.srcElement, "className", "coolButton");
	for(nummenu=1;nummenu<=mnumberofsub;nummenu++){  
		var thesub=document.all['msubmenudiv'+nummenu];
		if(!(menuid==thesub||menuid.style.tag>=thesub.style.tag)){
			msubmenuhide(thesub);
			mnochange(document.all['mp'+nummenu]);
			document.all["mitem"+nummenu].style.color=mfontcolor;
		}
	}
	if(item)
		document.all["mitem"+item].style.color=mmenuovercolor;
	if(misdown||item){
		mtoin(msrcel);
	}else{
		mtoout(msrcel);
	}
	if(mthestatus!=""){
		musestatus=true;
		window.status=mthestatus;
	}
	clearTimeout(mpopTimer);
	//////////////////////////
	hideEleObj(menuid);
}
function mmenuitem_out(menuid,hassub){
	msrcel = getReal(window.event.srcElement, "className", "coolButton");
	if(!hassub)
		mnochange(msrcel);
	if(musestatus)
		window.status="";
	mpopOut()
}
function mmenuitem_down(menuid){
	msrcel = getReal(window.event.srcElement, "className", "coolButton");
	mtoin(msrcel)
	misdown=true;
}
function mmenuitem_up(menuid){
	msrcel = getReal(window.event.srcElement, "className", "coolButton");
	mtoout(msrcel)
	misdown=false;
}
function mexec3(j,i){
	var cmd;
	if(eval("msub"+j).items[i].target=="blank"){
		cmd = "window.open('"+eval("msub"+j).items[i].command+"')";
	}else{
		cmd = eval("msub"+j).items[i].target+".location='"+eval("msub"+j).items[i].command+"'";
	}
	eval(cmd);
}
function mexec2(x){
	var cmd;
	if(mmenus[x].target=="blank"){
		cmd = "window.open('"+mmenus[x].command+"')";
	}else{
		cmd = mmenus[x].target+".location='"+mmenus[x].command+"'";
	}
	eval(cmd);
}
//function mexec(x,i){
//	var cmd;
//	if(mmenus[x].items[i].target=="blank"){
//		cmd = "window.open('"+mmenus[x].items[i].command+"')";
//	}else{
//		cmd = mmenus[x].items[i].target+".location='"+mmenus[x].items[i].command+"'";
//	}
//	eval(cmd);
//}
function mbody_click(){
	if (misShow){
		msrcel = getReal(window.event.srcElement, "className", "coolButton");
		for(var x=0;x<=mmenus.length;x++){
			if(msrcel.id=="mMenu"+x)
				return;
		}
		for(x=1;x<=mnumberofsub;x++){
			if(msrcel.id=="mp"+x)
				return;
		}
		mallhide();
	}
}

document.onclick=mbody_click;
var mMenuBodyRef;
function mwritetodocument(){
	var mwb=1;
	for(var i in document.all){
		if (document.all[i].tagName == 'BODY'){
			mMenuBodyRef = document.all[i];
			var stringx='<div id="mposflag" style="position:absolute;"></div>'+
				'<table background=../images/bg_small.jpg id=mmenutable border=0 cellpadding=0 cellspacing=0 width='+mmenuwidth+
				' height='+mmenuheight+' bgcolor='+mmenucolor+' onselectstart="event.returnValue=false"'+
				' style="cursor:'+mcursor+';'+mfonts+' padding:0px"><tr>';
			for(var x=0;x<mmenus.length;x++){
				var thismenu=mmenus[x];
				var imgsize;
				if(thismenu.sizex=="0"&&thismenu.sizey=="0"){
					imgsize="";
				}else{
					imgsize=" width="+thismenu.sizex+" height="+thismenu.sizey;
				}
				var ifspace;
				if(thismenu.caption==""){
					ifspace="";
				}else{
					ifspace="&nbsp;";
				}
				stringx += "<td valign=bottom class=coolButton id=mMenu"+x+" style='border: "+mitemedge+"px solid "+mmenucolor+
					"' onmouseover=mmenu_over(mmenudiv"+x+
					","+x+") onmouseout=mmenu_out(mmenudiv"+x+
					") onmousedown=mmenu_down(mmenudiv"+x+","+x+")";
				if(thismenu.command!=""){
					stringx += " onmouseup=mexec2("+x+");mmenu_up();";
				}else{
					stringx += " onmouseup=mmenu_up()";
				}
				if(thismenu.pos=="0"){
					stringx += " align=center><img align=absmiddle src="+thismenu.img+imgsize+">"+ifspace+thismenu.caption+"</td>";
				}else if(thismenu.pos=="1"){
					stringx += " align=center>"+thismenu.caption+ifspace+"<img align=absmiddle src="+thismenu.img+imgsize+"></td>";	
				}else if(thismenu.pos=="2"){
					stringx += " align=center background="+thismenu.img+">&nbsp;"+thismenu.caption+"&nbsp;</td>";
				}else{
					stringx += " align=center>&nbsp;"+thismenu.caption+"&nbsp;</td>";
				}
				stringx += "";
			}                     
			stringx+="<td width=*>&nbsp;</td></tr></table>";
			for(var x=0;x<mmenus.length;x++){
				thismenu=mmenus[x];
				if(x<0){
					stringx+='<div id=mmenudiv'+x+' style="visiable:none"></div>';
				}else{
					stringx+='<div id=mmenudiv'+x+
						' style="cursor:'+mcursor+';position:absolute;'+
						'width:'+mmenuitemwidth+'px; z-index:'+(x+100);
					if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
						stringx+=';border-left: 1px solid '+mmidoutcolor+
							';border-top: 1px solid '+mmidoutcolor;
					}
					stringx+=';border-right: 1px solid '+mmenuinbordercolor+
						';border-bottom: 1px solid '+mmenuinbordercolor+';visibility:hidden;padding-left: 22px;background-image: url(../images/menu_bg.jpg)" onselectstart="event.returnValue=false">\n'+
						'<table width="100%" border="0" height="100%" align="center" cellpadding="0" cellspacing="2" '+
						'style="'+mfonts+' border-left: 1px solid '+mmenuoutbordercolor;
					if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
						stringx+=';border-right: 1px solid '+mmidincolor+
							';border-bottom: 1px solid '+mmidincolor;
					}
					stringx+=';border-top: 1px solid '+mmenuoutbordercolor+
						';padding-left: '+mmenupaddingleft+'px" bgcolor='+mmenucolor+'>\n';
					for(var i=0;i<thismenu.items.length;i++){
						var thismenuitem=thismenu.items[i];
						var imgsize;
						if(thismenuitem.sizex=="0"&&thismenuitem.sizey=="0"){
							imgsize="";
						}else{
							imgsize=" width="+thismenuitem.sizex+" height="+thismenuitem.sizey;
						}
						var ifspace;
						if(thismenu.caption==""){
							ifspace="";
						}else{
							ifspace="&nbsp;";
						}
						if(thismenuitem.hasc!=null){
							stringx += "<tr><td id=mp"+thismenuitem.hasc+" class=coolButton style='border: "+
								mitemedge+"px solid "+mmenucolor+"' width=100% onmouseout=mmenuitem_out(mmenudiv"+x+
								",true) onmouseover=\"mthestatus='"+thismenuitem.statustxt+
								"';mmenuitem_over(mmenudiv"+x+",'"+thismenuitem.hasc+
								"');mshowsubmenu(msubmenudiv"+thismenuitem.hasc+",mp"+thismenuitem.hasc+
								",mmenudiv"+x+");\""+
								"><table id=mitem"+thismenuitem.hasc+
								" cellspacing='0' cellpadding='0' border='0' width='100%' style='"+mfonts+
								"'><tr><td ";
							if(thismenuitem.pos=="0"){
								stringx += "><img align=absmiddle src="+thismenuitem.img+imgsize+">"+ifspace+thismenuitem.caption+"</td><td";
							}else if(thismenuitem.pos=="1"){
								stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src="+
									thismenuitem.img+imgsize+"></td><td";
							}else if(thismenuitem.pos=="2"){
								stringx += "background="+thismenuitem.img+">"+thismenuitem.caption+
									"</td><td background="+thismenuitem.img;	
							}else{
								stringx += ">"+thismenuitem.caption+"</td><td";
							}
							stringx += " align=right width='1'><font face='Webdings' style='font-size: 6pt'>4</font></td></tr></table></td></tr>\n";
						}else if(!thismenuitem.isline){
							stringx += "<tr><td class=coolButton style='border: "+mitemedge+"px solid "+mmenucolor+
                     		"' width=100% height=15px onmouseover=\"mthestatus='"+thismenuitem.statustxt+"';mmenuitem_over(mmenudiv"+x+
                     		");\" onmouseout=mmenuitem_out(mmenudiv"+x+
                     		") onmousedown=mmenuitem_down(mmenudiv"+x+") onmouseup=";
							stringx += "mexec("+x+","+i+");mmenuitem_up(mmenudiv"+x+") ";
							if(thismenuitem.pos=="0"){
								stringx += "><img align=absmiddle src="+
									thismenuitem.img+imgsize+">"+ifspace+thismenuitem.caption+"</td></tr>";
							}else if(thismenuitem.pos=="1"){
								stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src="+thismenuitem.img+imgsize+"></td></tr>";
							}else if(thismenuitem.pos=="2"){
								stringx += "background="+thismenuitem.img+">"+thismenuitem.caption+"</td></tr>";
							}else{
								stringx += ">"+thismenuitem.caption+"</td></tr>";
							}
						}else{
							stringx+='<tr><td height="3"><table width="90%" height=1 bgcolor="'+mfontcolor+'" border=0 cellspacing=0 cellpadding=0><tr><td></td></tr></table></td></tr>\n';
						}
					}
					stringx+='</table>\n</div>';
				}
			}
			for(var j=1;j<=mnumberofsub;j++){
				thisitem=eval("msub"+j);
				stringx+='<div id=msubmenudiv'+j+
					' style="tag:'+thisitem.level+';cursor:'+mcursor+';position:absolute;'+
					'width:'+mmenuitemwidth+'px; z-index:'+(j+200);
				if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
					stringx+=';border-left: 1px solid '+mmidoutcolor+
						';border-top: 1px solid '+mmidoutcolor;
				}
				stringx+=';border-right: 1px solid '+mmenuinbordercolor+
					';border-bottom: 1px solid '+mmenuinbordercolor+
					';visibility:hidden;padding-left: 22px;background-image: url(../images/menu_bg.jpg)" onselectstart="event.returnValue=false">\n'+
					'<table width="100%" border="0" height="100%" align="center" cellpadding="0" cellspacing="2" '+
					'style="'+mfonts+' border-left: 1px solid '+mmenuoutbordercolor;
				if(mmenuinbordercolor!=mmenuoutbordercolor&&msubedge=="0"){
					stringx+=';border-right: 1px solid '+mmidincolor+
						';border-bottom: 1px solid '+mmidincolor;
				}
				stringx+=';border-top: 1px solid '+mmenuoutbordercolor+
					';padding-left: '+mmenupaddingleft+'px" bgcolor='+mmenucolor+'>\n';
				for(var i=0;i<thisitem.items.length;i++){
					var thismenuitem=thisitem.items[i];
					var imgsize;
					if(thismenuitem.sizex=="0"&&thismenuitem.sizey=="0"){
						imgsize="";
					}else{
						imgsize=" width="+thismenuitem.sizex+" height="+thismenuitem.sizey;
					}
					var ifspace;
					if(thismenu.caption==""){
						ifspace="";
					}else{
						ifspace="&nbsp;";
					}
					if(thismenuitem.hasc!=null){
						stringx += "<tr><td id=mp"+thismenuitem.hasc+" class=coolButton style='border: "+
							mitemedge+"px solid "+mmenucolor+
							"' width=100% onmouseout=mmenuitem_out(msubmenudiv"+j+
							",true) onmouseover=\"mthestatus='"+thismenuitem.statustxt+
							"';mmenuitem_over(msubmenudiv"+j+
                     		",'"+thismenuitem.hasc+
							"');mshowsubmenu(msubmenudiv"+thismenuitem.hasc+",mp"+thismenuitem.hasc+
							",msubmenudiv"+j+");\""+"><table id=mitem"+thismenuitem.hasc+
							" cellspacing='0' cellpadding='0' border='0' width='100%' style='"+mfonts+"'><tr><td ";
						if(thismenuitem.pos=="0"){
							stringx += "><img align=absmiddle src="+thismenuitem.img+imgsize+">"+
								ifspace+thismenuitem.caption+"</td><td";
						}else if(thismenuitem.pos=="1"){
							stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src="+
								thismenuitem.img+imgsize+"></td><td";
						}else if(thismenuitem.pos=="2"){
							stringx += "background="+thismenuitem.img+">"+thismenuitem.caption+
								"</td><td background="+thismenuitem.img;	
						}else{
							stringx += ">"+thismenuitem.caption+"</td><td";
						}
						stringx += " align=right width='1'><font face='Webdings' style='font-size: 6pt'>4</font></td></tr></table></td></tr>\n";
					}else if(!thismenuitem.isline){
						stringx += "<tr><td class=coolButton style='border: "+mitemedge+"px solid "+
							mmenucolor+"' width=100% height=15px onmouseover=\"mthestatus='"+
							thismenuitem.statustxt+"';mmenuitem_over(msubmenudiv"+j+
							");\" onmouseout=mmenuitem_out(msubmenudiv"+j+
							") onmousedown=mmenuitem_down(msubmenudiv"+j+") onmouseup=";
						stringx += "mexec3("+j+","+i+");mmenuitem_up(msubmenudiv"+j+") ";
						if(thismenuitem.pos=="0"){
							stringx += "><img align=absmiddle src="+thismenuitem.img+imgsize+
								">"+ifspace+thismenuitem.caption+"</td></tr>";	
						}else if(thismenuitem.pos=="1"){
							stringx += ">"+thismenuitem.caption+ifspace+"<img align=absmiddle src="+
								thismenuitem.img+imgsize+"></td></tr>";	
						}else if(thismenuitem.pos=="2"){
							stringx += "background="+thismenuitem.img+">"+thismenuitem.caption+"</td></tr>";
						}else{
							stringx += ">"+thismenuitem.caption+"</td></tr>";
						}
					}else{
						stringx+='<tr><td height="1"><table width="90%" height=1 bgcolor="'+mfontcolor+'" border=0 cellspacing=0 cellpadding=0><tr><td></td></tr></table></td></tr>\n';
					}
				}
				stringx+='</table>\n</div>';
			}
			document.write("<div align='left'>"+stringx+"</div>");
			break;
		}
	}
}

function showEleObj() {
//	showElement("IFRAME");
	showElement("OBJECT");
	showElement("SELECT");
}
function hideEleObj(menuid) {
	var ox = parseInt(menuid.style.left);
	var oy = parseInt(menuid.style.top)-75;
	var ow = menuid.offsetWidth;
	var oh = menuid.offsetHeight;
//	hideElement("IFRAME", ox, oy, ow, oh);
	hideElement("OBJECT", ox, oy, ow, oh);
	hideElement("SELECT", ox, oy, ow, oh);
}
function showElement(elmID){
	if (parent.mFrame == null)
		return false;
    for (i = 0; i < mFrame.document.all.tags(elmID).length; i++)    {
        obj = mFrame.document.all.tags(elmID)[i];
        if (! obj || ! obj.offsetParent)
            continue;
        obj.style.visibility = "";
    }
}
function hideElement(elmID, ox, oy, ow, oh){
	if (parent.mFrame == null)
		return false;
    ox = parseInt(ox);
    oy = parseInt(oy);
    ow = parseInt(ow);
    oh = parseInt(oh);
    for (i = 0; i < mFrame.document.all.tags(elmID).length; i++)    {
        obj = mFrame.document.all.tags(elmID)[i];
        if (! obj || ! obj.offsetParent)
            continue;
        objLeft = obj.offsetLeft;
        objTop = obj.offsetTop;
        objParent = obj.offsetParent;
        while (objParent.tagName.toUpperCase() != "BODY")    {
            objLeft += objParent.offsetLeft;
            objTop += objParent.offsetTop;
            objParent = objParent.offsetParent;
        }
        if ( (ox > (objLeft+obj.offsetWidth)) || (objLeft > (ox+ow)) || (objTop > (oy+oh)) || (oy>(objTop+obj.offsetHeight)) )
            return false;
        else
            obj.style.visibility = "hidden";
    }
}

function initMenu(){
	mwritetodocument();
}
